package EmportImportDMTFCIM;

import java.util.HashMap;

public class ClassCIM {

	String name;// Name of the CIM class
	String description;// Description of the CIM class
	HashMap<String, String> mapAttributeType;// HashMap with for key attribute's
												// name and for value the type
												// of this attribute.
	HashMap<String, String> mapOperationReturnType;// HashMap with for key
													// operation's name and for
													// value the type of the
													// return of this operation
	HashMap<String, String> mapAttributeDescription;// HashMap with for key
													// attribute's name and for
													// value the description of
													// this attribute
	HashMap<String, String> mapOperationDescription;// HashMap with for key
													// operation's name and for
													// value the description of
													// this operation

	public ClassCIM(){
		this.name = "";
		this.description = "";
		this.mapAttributeDescription = new HashMap<String, String>();
		this.mapAttributeType = new HashMap<String, String>();
		this.mapOperationDescription = new HashMap<String, String>();
		this.mapOperationReturnType = new HashMap<String, String>();
	}
	
	public void setName(String className) {
		this.name = className;
	}

	public void setAttribute(String typeAtt, String nameAtt) {
		this.mapAttributeType.put(nameAtt, typeAtt);
	}

	public void setOperation(String nameOp, String returnTypeOp) {
		this.mapOperationReturnType.put(nameOp, returnTypeOp);
	}

	public void setDescription(String desc) {
		this.description = desc;
	}

	public void setAttributeDescription(String nameAtt, String desc) {
		this.mapAttributeDescription.put(nameAtt, desc);
	}

	public void setOperationDescription(String nameOp, String desc) {
		this.mapOperationDescription.put(nameOp, desc);
	}
	
	public String getName(){
		return this.name;
	}
	
	public HashMap<String, String> getOperations(){
		return this.mapOperationDescription;
	}
	public HashMap<String, String> getOperationsReturnTypes(){
		return this.mapOperationReturnType;
	}
	public HashMap<String, String> getAttributes(){
		return this.mapAttributeType;
	}
}
